package com.ruoyi.manage.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 组织用户管理对象 g_user
 * 
 * @author ruoyi
 * @date 2025-10-11
 */
public class GUser extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 用户ID */
    @Excel(name = "用户ID")
    private String userId;

    /** 用户类型（如：管理员/普通用户） */
    private String userType;

    /** 所属单位ID */
    @Excel(name = "所属单位ID")
    private String orgId;

    /** 所属公司ID */
    private String companyId;

    /** 登录账号，唯一 */
    @Excel(name = "登录账号，唯一")
    private String loginName;

    /** 密码哈希值 */
    private String loginPass;

    /** 盐值 */
    private String salt;

    /** 用户名 */
    @Excel(name = "用户名")
    private String userName;

    /** 性别，1为男0为女 */
    @Excel(name = "性别，1为男0为女")
    private String userSex;

    /** 出生日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出生日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date userBirth;

    /** 手机号，唯一 */
    @Excel(name = "手机号，唯一")
    private String mobile;

    /** 路长职位名称 */
    private String userPosition;

    /** 路长所属单位 */
    private String userOrgName;

    /** 身份证号，唯一 */
    private String idCard;

    /** 是否主账号（0:否 1:是） */
    private Integer masterUser;

    /** 软删除标记（0:正常 1:删除） */
    private Integer delFlag;

    public void setUserId(String userId) 
    {
        this.userId = userId;
    }

    public String getUserId() 
    {
        return userId;
    }

    public void setUserType(String userType) 
    {
        this.userType = userType;
    }

    public String getUserType() 
    {
        return userType;
    }

    public void setOrgId(String orgId) 
    {
        this.orgId = orgId;
    }

    public String getOrgId() 
    {
        return orgId;
    }

    public void setCompanyId(String companyId) 
    {
        this.companyId = companyId;
    }

    public String getCompanyId() 
    {
        return companyId;
    }

    public void setLoginName(String loginName) 
    {
        this.loginName = loginName;
    }

    public String getLoginName() 
    {
        return loginName;
    }

    public void setLoginPass(String loginPass) 
    {
        this.loginPass = loginPass;
    }

    public String getLoginPass() 
    {
        return loginPass;
    }

    public void setSalt(String salt) 
    {
        this.salt = salt;
    }

    public String getSalt() 
    {
        return salt;
    }

    public void setUserName(String userName) 
    {
        this.userName = userName;
    }

    public String getUserName() 
    {
        return userName;
    }

    public void setUserSex(String userSex) 
    {
        this.userSex = userSex;
    }

    public String getUserSex() 
    {
        return userSex;
    }

    public void setUserBirth(Date userBirth) 
    {
        this.userBirth = userBirth;
    }

    public Date getUserBirth() 
    {
        return userBirth;
    }

    public void setMobile(String mobile) 
    {
        this.mobile = mobile;
    }

    public String getMobile() 
    {
        return mobile;
    }

    public void setUserPosition(String userPosition) 
    {
        this.userPosition = userPosition;
    }

    public String getUserPosition() 
    {
        return userPosition;
    }

    public void setUserOrgName(String userOrgName) 
    {
        this.userOrgName = userOrgName;
    }

    public String getUserOrgName() 
    {
        return userOrgName;
    }

    public void setIdCard(String idCard) 
    {
        this.idCard = idCard;
    }

    public String getIdCard() 
    {
        return idCard;
    }

    public void setMasterUser(Integer masterUser) 
    {
        this.masterUser = masterUser;
    }

    public Integer getMasterUser() 
    {
        return masterUser;
    }

    public void setDelFlag(Integer delFlag) 
    {
        this.delFlag = delFlag;
    }

    public Integer getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("userId", getUserId())
            .append("userType", getUserType())
            .append("orgId", getOrgId())
            .append("companyId", getCompanyId())
            .append("loginName", getLoginName())
            .append("loginPass", getLoginPass())
            .append("salt", getSalt())
            .append("userName", getUserName())
            .append("userSex", getUserSex())
            .append("userBirth", getUserBirth())
            .append("mobile", getMobile())
            .append("userPosition", getUserPosition())
            .append("userOrgName", getUserOrgName())
            .append("idCard", getIdCard())
            .append("masterUser", getMasterUser())
            .append("delFlag", getDelFlag())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
